Telecommunications system, method of managing a telecommunications system for optimized bandwidth usage during conference calls and program product therefor

ABSTRACT

A telecommunications system, method of managing a telecommunications system and program product therefore. Telecommunications system branches are linked to a network and to each other in a wide area network (WAN). Each branch includes telecommunications devices and a media processor that supports a concurrent port for each local telecommunications device. A controller, e.g., at a data center, selects media processing resources to aggregate system media during conference calls for efficient bandwidth use. The controller may select resources based on user location, Call Admission Control (CAC) policy bandwidth usage, and availability of media resources and media processor ports.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is related to packet based telecommunications suchas Voice over Internet Protocol (VoIP) communications and moreparticularly, to controlling packet based telecommunications networksfor multiparty calls such as VoIP conference calls.

2. Background Description

Since Voice over Internet Protocol (VoIP) communications use aconnectionless protocol, as long as Quality of Service (QoS) is not afactor, any number of calls may be carried over a packet based networklink. However, because bandwidth is not unlimited, QoS is almost alwaysa consideration. Limited bandwidth has required constraining linktraffic to insure high QoS. In particular, in a connectionless protocoltelecommunications system conducting too many calls over a broadbandlink can cause gaps, delays and dropped calls. Consequently, packetnetworks restrict the number of active calls to protect voice trafficfrom the negative effects of other voice traffic and to prevent excessvoice traffic.

Currently, for example, Call Admission Control (CAC) is used in packetbased telecommunications, such as VoIP, to control and ensure adequatebandwidth for the authorized communications flows. Typically, CACpolicies are implemented to ensure that calls cannot setup whenevercurrent traffic is consuming enough of the available broadband or widearea network (WAN) bandwidth to make it impossible to support added flowwithout negatively affecting the QoS for existing voice traffic.

Typically, these CAC policies treat all calls the same. Conference callsthat may originate from multiple network endpoints, traverse theInternet, for example, connecting to another, remote network branch withmultiple participating network endpoints. Assigning each participant asan individual call is inefficient and may, very likely and very quickly,consume most or all available resources. One party, e.g., initiating theconference, cannot select the media processor for the conference callwith other participants remote to the originator. Further, typical stateof the art call management servers that provide conference services to alarge number of locations are constrained by CAC policies for anylocation remote to the single selected media processor. This frequentlyresults in otherwise available WAN link bandwidth, e.g., in branchesother than the branch where the selected media processor resides, beingunused and unusable.

Thus, there is a need for packet telecommunications networks thatimprove bandwidth usage on WAN links for optimal network capacityconsumption to expand the number of allowable conference calls and callparticipants for a given WAN link bandwidth.

SUMMARY OF THE INVENTION

It is a purpose of the invention to optimize bandwidth usage duringconference calls in telecommunications systems;

It is another purpose of the invention to increase conference callcapacity in telecommunications systems;

It is yet another purpose of the invention to improve real time mediausage management for telecommunications networks with bandwidth that islimited between branch offices.

The present invention relates to a telecommunications system, method ofmanaging a telecommunications system for optimized bandwidth usageduring conference calls and program product therefor. Telecommunicationssystem branches are linked to a network, e.g., the Internet, and to eachother in a wide area network (WAN). Each branch includestelecommunications devices and a media processor that supports aconcurrent port for each local telecommunications device. A controller,e.g., at a data center, selects media processing resources to aggregatesystem media during conference calls for efficient bandwidth use. Thecontroller may select resources based on user location, Call AdmissionControl (CAC) policy bandwidth usage, and availability of mediaresources and media processor ports.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other objects, aspects and advantages will be betterunderstood from the following detailed description of a preferredembodiment of the invention with reference to the drawings, in which:

FIG. 1 shows an example of an enterprise with a star shaped networkaccording to a preferred embodiment of the present invention;

FIGS. 2A-B show a simple example of a first conference setup andassignment table for a conference involving 2 parties from branch A, 4parties from branch B, and 2 parties from branch C;

FIGS. 3A-B show an example of a second conference setup and assignmenttable for a second conference on the same system;

FIGS. 4A-B show yet another example, wherein a second conference isestablished between branches B and C, even though Branch B is fullybooked.

DESCRIPTION OF PREFERRED EMBODIMENTS

Turning now to the drawings and more particularly, FIG. 1 shows anexample of an enterprise with a star shaped network 100 according to apreferred embodiment of the present invention. The star shaped network100 in this example includes 3 branches 102, 104, 106, also labeled A, Band C. Each branch 102, 104, 106 has multiple (6 in this example)endpoints 102-2—102-12, 104-2—104-12, 106-2—106-12, and a mediaprocessor 108, 110, 112. Each media processor 108, 110, 112 supports 6concurrent ports. Each branch 102, 104, 106 has a bandwidth limited WANlink 114, 116, 118 to a network 120, e.g., the Internet or any suitablenetwork, with a CAC policy that allows two media streams. A controller122, e.g., located in a data center, selects media processing resourcesfor the entire network 100 to aggregate media for efficient bandwidthusage on WAN links 114, 116, 118, according to a preferred embodiment ofthe present invention. It should be noted that the star topology of thenetwork 100 in this example is for example only and not intended as alimitation. The present invention has application to any suitablenetwork topology, including tree and mesh topologies or any combinationthereof.

In particular, upon initiating a conference call, e.g., receiving arequest for a conference call, a preferred controller 122 proceeds withmedia processing resource selection for the enterprise 100, selectingresources for conference media processors 108, 110, 112 based on userlocation, CAC policy bandwidth usage, and availability of mediaresources and media processor ports. Each CAC policy sets the number ofconcurrent media streams that are allowed over the WAN links 114, 116,118, depending upon link bandwidth. Ports on media processors 108, 110,112 may be reallocated as parties are added or removed from conferencecalls, e.g., using standard media gateway control protocols. Typicalsuch standard gateway control protocols include, for example, MediaGateway Control Protocol (MGCP), media gateway control (megaco) andSession Initiation Protocol (SIP) with Minimal XML/Media Objects MarkupLanguage (MXML/MOML). Further, the controller 122 provides mediare-negotiation towards the conference parties using, for example,SIP/Session Description Protocol (SIP/SDP). Thus, even when conferenceactivity on one branch (e.g., 104) uses all available Call AdmissionControl (CAC) resources and occupies all available bandwidth for thatbranch 104, the controller 122 can establish other independentconference calls, e.g., between other of branches 102, 106.

FIGS. 2A-B show a simple example of a first conference setup by thecontroller 122 and a corresponding assignment table with like featureslabeled identically. In this example, the conference involves 2 parties102-4 and 102-8 from branch A, 4 parties 104-4, 104-6, 104-8, and 104-10from branch B, and 2 parties 106-2 and 106-4 from branch C. Thecontroller 122 allocates resources for the media processors or servers108, 110, 112 to minimize media streams 130, 132 based on user location,CAC policies, and availability of media processor ports as indicatedhereinabove.

In particular, the CAC policies define resource thresholds for eachlink. This resource threshold may be expressed in terms of bandwidth orsimply, as a number of concurrent calls. In this simple example, thecontroller 122, treats each media stream 130, 132 as consuming the samebandwidth. Usage also may be described within the same unit. Although inBranch 102, for example, the CAC policy permits 2 media streams or calllegs across the WAN, the usage in FIG. 2A is 1 call leg, media streams130. Preferably, however, the controller 122 is aware of the medianegotiations for each call, and uses a more sophisticated calculationbased on consumed bandwidth; the sum of the bandwidth that the mediastreams 130, 132 actually consume in branch 104, for example.

Assignment table 134 of FIG. 2B shows the assignment of concurrent callsper CAC policy and Media Processing (MP) resources, comparing availablewith used for this example. In the first branch 102 at the WAN link 114one of two available concurrent calls for the CAC Policy is used forthree of the six media processor 108 ports (to 102-4, 102-8 and mediaprocessor 110). In the second branch 104 at WAN link 116 both of theavailable concurrent calls for the CAC Policy are used for all six ofthe six media processor 110 ports (to 104-4, 104-6, 104-8, 104-10 andmedia processors 108, 112). Likewise, in the third branch 106 at WANlink 118 one of two available concurrent calls for the CAC Policy isused for three of the six media processor 112 ports (to 106-2, 106-4 andmedia processor 110). So as can be seen from this simple example, WANresource usage is assigned to optimize media processing resourcesdistributed within each CAC policy, leaving resources available atbranches 102 and 106 for other calls or conference calls, for example.

FIGS. 3A-B show an example of a second conference setup by thecontroller 122 in response to a subsequent request and a correspondingassignment table for the second conference on the same system 100 withlike features labeled identically. This second conference involves 2different parties 102-6 and 102-10 from branch A and 2 different parties106-6 and 106-12 from branch C. The controller 122 allocates remainingresources for media servers 108 and 112 to media stream 136, againtreating each media stream 130, 132 and 136 as consuming the samebandwidth. This establishes the second conference. The updatedassignment table 138 reflects all CAC policies and MP resources beingused.

FIGS. 4A-B show yet another example, wherein a second conference isestablished between branches B and C by the controller 122 in responseto a subsequent request and with like features labeled identically. Inthis example, the second conference is established even though Branch Bis fully booked, i.e., all CAC policies and MP resources are in use. Thesecond conference has 1 party from Branch B, and 2 parties from BranchC. In this example, each of branches B and C is connected to an externalnetwork 140, e.g., a publicly switched telephone network (PSTN), througha local gateway 142, 144. Preferably, although not shown in thisexample, each branch has a local gateway to an external network or someother path to connecting to other branches. Continuing this example,branch B endpoint 104-2 is directly connected to the local gateway 142.Branch C endpoints 106-6 and 106-12 connect through the media processor112 to the local gateway 144. The corresponding assignment table 146reflects that CAC policies and MP resources are assigned for branches Aand B as in the single conference call example of FIGS. 2A-B. However,the assignment table 146 reflects that Branch C has only one CAC policyin use, but all MP resources are being used.

Advantageously, the present invention distributes media processingresources for conferencing in telecommunications networks otherwiseconstrained by limited bandwidth links. Resources are distributed basedon user location, link bandwidth and CAC policies. In particular, thepresent invention optimizes resources in systems serving anygeographically distributed organization that may rely on real timeconferencing to conduct business. Conference media processor resourcesare deployed based on CAC policies; Conference media processor resourcesare selected for the network based on: user location, bandwidth usageper CAC policy, available/free media resources per media processor.

A preferred call management server controls conference calling toprovide optimized conference services to a large number of locationsthat could not be controlled by a single media processor. Conferenceparticipants may be added in excess of defined CAC policies, aggregatingmedia (e.g., local media processing) for more efficient WAN linkbandwidth usage. Conference media processors and processor resources maybe selected based on the party initiating the conference, even withother participants in locations remote to the conference originator.

While the invention has been described in terms of preferredembodiments, those skilled in the art will recognize that the inventioncan be practiced with modification within the spirit and scope of theappended claims. It is intended that all such variations andmodifications fall within the scope of the appended claims. Examples anddrawings are, accordingly, to be regarded as illustrative rather thanrestrictive.

1. A telecommunications system comprising: a plurality of branches, eachlinked to a network, said plurality of branches being networked witheach other; a plurality of telecommunications devices at each of saidplurality of branches; a media processor at each of said plurality ofbranches, said media processor supporting a concurrent port for each oneof a corresponding said plurality of telecommunications devices; and acontroller selecting media processing resources to aggregate systemmedia during conference calls for efficient bandwidth use.
 2. Atelecommunications system as in claim 1, wherein said controllerprovides media processing resource selection responsive to CallAdmission Control (CAC) policies defined for each branch.
 3. Atelecommunications system as in claim 1, wherein said controller islocated in a data center and selects conference media processingresources based on user location, Call Admission Control (CAC) policybandwidth usage, and availability of media resources and media processorports.
 4. A telecommunications system as in claim 3, wherein saidcontroller is aware of media negotiations for each conference call andfurther selects conference media processors responsive to bandwidthconsumed by each media stream.
 5. A telecommunications system as inclaim 1, wherein when conference activity on one branch occupies allavailable Call Admission Control (CAC) policy bandwidth for that branch,said controller establishes other conference calls between other ones ofsaid plurality of branches.
 6. A telecommunications system as in claim1, wherein said controller further provides media re-negotiation towardsconference parties.
 7. A telecommunications system as in claim 1,wherein said network is a wide area network (WAN), said WAN furthercomprising a local gateway in at least two of said plurality ofbranches, each linked to an external network, and wherein whenconference activity on one branch of said at least two occupies allavailable Call Admission Control (CAC) policy bandwidth for that branch,said controller establishes other conference calls between said onebranch and other ones of said at least two through said externalnetwork.
 8. A telecommunications system as in claim 7, wherein saidplurality of branches are linked together over the Internet and saidexternal network is a publicly switched telephone network (PSTN).
 9. Atelecommunications system as in claim 8, wherein telecommunicationsdevices on said one branch conferenced with telecommunications deviceson other branches are connected to the PSTN through a respective saidlocal gateway and said other branches are ported to said PSTN through aport on a respective said media processor.
 10. A method of managingcommunications in a telecommunications network, said method comprisingthe steps of: a) receiving a request for a conference call amongstendpoints at a plurality of branches in said telecommunications network;b) selecting conference media processor resources in branches involvedin the requested conference call based on user location, branchbandwidth usage, and availability of media resources and media processorports, wherein said conference media processor resources are selected tooptimize bandwidth usage in said telecommunications network; c)monitoring said telecommunications network for additional conferencecalls; and responsive to receipt of a request, d) returning to step (b)and, selecting said conference media processor resources in branchesinvolved in the requested conference call from remaining said conferencemedia processor resources.
 11. A method of managing communications in atelecommunications network as in claim 10, wherein whenever in step (b)remaining said conference media processor resources are insufficient inone involved branch, step (b) further comprises routing a respectivemedia stream through an external network between said one and other saidbranches in the requested conference call.
 12. A method of managingcommunications in a telecommunications network as in claim 10, whereinthe step (b) of selecting media processing resources comprises selectingresponsive to bandwidth usage defined for each branch in a CallAdmission Control (CAC) policy.
 13. A method of managing communicationsin a telecommunications network as in claim 10, wherein conference mediaprocessing resources are selected for each conference call responsive tobandwidth consumed by each media stream.
 14. A non-transitory computerprogram product for managing communications in a telecommunicationsnetwork, said computer program product comprising a computer usablemedium having computer readable program code stored thereon, saidcomputer readable program code comprising: computer readable programcode means for monitoring a plurality of branches of atelecommunications network for requests for conference calls amongstendpoints at said plurality of branches; and computer readable programcode means for selecting conference media processor resources inbranches involved in the requested conference call, selected resourcesbeing selected from available system resources based on user location,branch bandwidth usage, and availability of media resources and mediaprocessor ports, wherein said resources are selected to optimizebandwidth usage in said telecommunications network.
 15. A computerprogram product as in claim 14, further comprising: computer readableprogram code means for determining when remaining resources areinsufficient in one involved branch, and computer readable program codemeans for routing a respective media stream through an external networkbetween said one and other said branches in the requested conferencecall.
 16. A computer program product as in claim 14, wherein thecomputer readable program code means for selecting media processingresources comprises computer readable program code means for selectingresponsive to bandwidth usage defined for each branch in a CallAdmission Control (CAC) policy.
 17. A computer program product as inclaim 14, wherein computer readable program code means for selectingmedia processing resources selects resources for each conference callresponsive to bandwidth consumed by each media stream.